The present invention relates to a tempo controller for automatic music play that is capable of providing a sequencer, rhythm machine etc. with tempo clock data that is controlled on the real time basis.
The play tempo is without doubt one of the most essential factors of music, because the tempo plays a significant role in making up characteristic musical expression by being varied in various manners even during the play of a single piece of music. Such tempo variation includes, for example, general tempo change like retardando or accelerando and more minute tempo change like tempo swing within a measure. Musical expression like that obtained by natural musical instruments can be achieved by an electronic musical instrument, if such minute tempo change can be effectively provided thereby, particularly, in its automatic playing. To carry out automatic playing, for example, on a sequencer according to the conventional technique, such tempo expression is realized by previously inputting a desired expression in the form of data.
However, the conventional sequencer is not satisfactory in that it can not provide flexible tempo changes on the real time basis. This means that the sequencer is almost incapable with respect to synchronization in playing with a human player, and thus the human player has to adapt himself to the device. To solve this problem, a technique is proposed in accordance with which tempo clock data is, rather than being produced within the sequencer, given from outside and besides the tempo clock data is controlled on the real time basis. As the most fundamental means for providing tempo expression from outside, tapping may be used. Namely, the player can produce tempo clock data based on his making tapping action.
Now, it is considered with reference to FIGS. 7, 8, 9A, 9B, 10A and 10B how music play by a computer (electronic musical instrument such as a sequencer performing an automatic play) is controlled in response to a tempo given by tapping action. Before going into such consideration, the following definition of the terms, "physical time" and "score time" frequently used hereunder is given.
Physical Time: It means normal time that is measured with a unit of, for example, milli second and produced by a timer within the computer.
Score Time: It means a position in a musical score that is measured with a unit equivalent to a certain fraction of one beat. For example, as will be mentioned throughout of this specification, the score time can be represented with a unit which is equivalent to 1/384 of one beat. According to the MIDI (Musical Instrument Digital Instrument) standard, F8 (MIDI clock data) is interpreted as a unit score time equivalent to 1/24 of one beat.
It is now assumed that the play is proceeded while the computer is successively provided with tempo by tapping. It is also assumed that, in FIG. 7, the tap operator (a player) has actually made the first tap at a position A' corresponding to A. In FIG. 7, A', B' and C' represent timings of individual taps made by the player, and A, B and C represent score timings in the computer. At the first tap timing, the score time in the computer is in accurate synchronism with the physical time at which the tap has been effected. If the play proceeds on keeping the same tempo, the next accented beat or downbeat (i.e., a position at which the next tap should occur) should be at position B. However, if the player makes the next tap at position B' little earlier than position B in an attempt to step up the tempo, a score time difference (corresponding to 1/4 of one beat in the illustrated example) is eventually be produced. Of course, a tempo difference is also be produced at this time. Thus, it becomes necessary to adjust the tempo for properly synchronizing the play by the computer with the play which the player wishes to perform. In this example, the tempo needs to be raised to 4/3 times. But, if nothing else is done, the next accented beat by the computer occurs at position C, while the player's next tap occurs at position C', so that the time difference (1/4 of one beat) is retained and hence complete synchronization is not attained.
Therefore, the time difference produced from tapping at position B' must be positively eliminated or corrected by some measures. The most simplest way to eliminate the time difference may be to forcibly adjust the computer's score time which is still at a position of 3/4 halfway to the one beat position corresponding to position B', when the next tap has been made at position B'. Similarly, when a tap has been made at position C', the computer' score time is forcibly adjusted to a position corresponding to position C'. FIG. 8 illustrates the principle of this solution, according to which the player's play and the computer's play can completely be synchronized with each other for each beat. However, the solution has one problem that, since, as mentioned, the computer is still at a position of 3/4 halfway to the one beat position when the next tap has been made at position B', sounding of notes contained between the 3/4 position and the one beat position is undesirably effected at one time. If, for example, there is contained a qudruplet therebetween, it is sounded simultaneously to produce an effect unfavorable in musical sense. Of course, if there is no note therebetween, no such unfavorable effect is produced.
If expressed by the score time and physical time, the proposed technique illustrated in FIGS. 7 and 8 will be as shown in FIGS. 9A and 9B and in FIGS. 10A and 10B, in which the score time is represented with a unit time that is equivalent to 1/384 of one beat as mentioned throughout the specification.
FIGS. 9A and 9B show that at physical time position t3 a tap timing has been slightly advanced by the player. In this case, although the advanced tap timing causes the tempo to be little faster, there is produced at position t3 a delay in the score time that is equal to 14 (=384-370) units, namely, 14 clock data (individual clock data is hereafter referred to also as a clock. If the tempo is not subsequently changed, the delay (time lag) is retained. On the other hand, in FIGS. 10A and 10B, the score time of the third beat (score time position 1152) is adjusted to time t3 at the moment when a tap has been made in advanced manner at time t3. Therefore, notes corresponding to 14 clocks produced immediately before the third beat are sounded at one time. The same is true with the fourth tap position.
As has been mentioned above, the prior art technique is diadvantageous in that with a mere tempo adjustment or forcible adjustment of time lag alone, complete synchronization between the play and tapping can not be achieved, or plural notes tend to be sounded at one time, as a result of which there arise musical problems.